In data transmission, in the transmission of digital data packets (frames) in particular, so-called synchronization words (sync patterns) are used for the synchronization of the recipient. With their help, the recipient finds the beginning of the frames in the serial data flow. Frame synchronization mechanisms which are common at present and work according to this principle run into limits, especially for the startup of the systems, at very high bit error rates, for example, higher than 10−2 or 1 percent, higher than 5 percent or even higher than 10 percent. With bandwidths in the order of magnitude of 40 gigabits per second and above, in particular, in fiber-optical telecommunications, nearly permanent bit errors are present in the data flow. Here, a forward error correction (FEC—Forward Error Correction) is necessary, so as to mathematically correct the bit errors present.
Since the FEC can, as a rule, work only after a successful frame synchronization, more and more efficient synchronization mechanisms are required. To attain even higher data rates, transmission methods with higher-value modulation are increasingly used, especially in fiber-optical data transmission. The more complex transmission technology needed for this, and the mostly poor signal-to-noise ratios, as a result of these modulation modes, additionally complicate the transmission. FEC methods for the correction of the data field in the frame must therefore be improved constantly.
For the frame synchronization as the basis of the frame processing, new error-tolerant methods are also needed because of the reasons given above, since the efficiency and/or applicability of the already existing methods for the error-tolerant frame synchronization are limited under extreme conditions.
Traditional methods synchronize with respect to specific bit patterns in the data frame head. To this end, state machines, which work as follows and are shown in FIG. 1, are used:
The data flow is first permanently scanned, as shown in FIG. 2, in the so-called “async status”. If a bit pattern is not recognized, the data are shifted by one bit (bit-by-bit pattern comparison). If the mechanism recognizes the expected bit pattern for the first time, for example—as shown in FIG. 2—after the mth comparison, a so-called “presync status” is assumed and a counter is started, which counts the data passing through. If this counter has attained a counter level, which corresponds to the data packet length (frame length), the data frame head with the corresponding synchronization pattern would now have to again pass by. This is tested with a renewed bit pattern comparison. If the comparison is positive, the data counter is again reset and restarted—that is, shifted by a complete frame length. The process (for this pattern comparison at a frame interval, the data are always shifted by a complete frame length) is repeated several times. If, within a stipulated number of bit comparisons in the data frame head, the bit pattern is not recognized once or several times, the system goes back to the “async status” and the scanning begins from the beginning. If the comparison is positive each time after a defined number of repetitions, the state machine assumes the “sync status.” One assumes that after a repeated synchronization pattern, correctly recognized in the data frame head, a synchronization is attained. In the “sync status,” a bit pattern comparison now periodically takes place in the data frame head. If the comparison is negative once or several times, the “presync status” is assumed. There, the data frame is again periodically scanned according to the sync pattern. After a previously stipulated number of erroneous comparisons, the system falls into the “async status.” If the bit pattern is again recognized correctly several times before this, the state machine again assumes the “sync status.”
This procedure functions, however, only if the total bit error number in the data frame head is, on average, so small that the expected synchronization patterns are recognized correspondingly often. If the erroneous comparisons are greater than specified in the state machines, the mechanism cannot be synchronized. In this case, one could eventually make possible a synchronization by varying the prespecified number of erroneous comparisons in the state machine. However, that functions only with freely programmable systems. With electronic components usually used in data communication, that is not possible. If bit errors are permanently present in the data frame head, the methods which work according to the principle described above, without error tolerance, fail completely.
The OTN synchronization mechanisms are very closely based on the principles of the SDH and SONET protocols. In the ethernet world, the data frame synchronization is implemented with the aid of fixed bit patterns. Fiber channel protocols are similarly specified.
What all aforementioned mechanisms have in common is that synchronization is carried out with respect to a precisely defined bit pattern. If the bit pattern is not exactly the same, then the individual comparison fails. A certain blurring can be attained by a multiple comparison—this is not variable, however, and ineffective in the comparison pattern with permanent bit errors.
In German publication DE 697 21 364 T2 and the analogous U.S. Pat. No. 5,943,377, a method for an error-tolerant and quick detection of a bit pattern in a bit pattern flow is also proposed. A candidate bit pattern in the form of a specific number of bits is hereby formed from the bit flow. Then, the candidate bit pattern is used as an address to address positions in a table. Each position in the table comprises information on the hits, which define a hit if the address of a position corresponds to any of the prespecified bit patterns or the falsifications which lie within the error tolerance.
As has become evident with the aid of experiments, all aforementioned methods and systems, however, still do not make possible data packet synchronization and data rate adaptation with extremely high bit error rates. With permanent bit errors in the synchronization pattern of the data frame and/or in the idle data designation field, these methods lack usefulness because of their operating principle.